#!/bin/zsh
# 自定义Maven包装器脚本，使用指定的settings.xml文件并同时启动前端

# 用户提供的settings.xml路径
CUSTOM_SETTINGS="/Users/joe.wen/Desktop/develop/apache-maven-3.9.3/conf/settings.xml"
# 前端目录路径
FRONTEND_DIR="/Users/joe.wen/Desktop/ai-code/springboot-ai-demo/ai-chat-frontend"

# 检查settings.xml文件是否存在
if [ -f "$CUSTOM_SETTINGS" ]; then
    echo "使用自定义settings.xml: $CUSTOM_SETTINGS"
    
    # 启动后端服务（后台运行）
    echo "启动后端服务..."
    ./mvnw --settings "$CUSTOM_SETTINGS" spring-boot:run -Dspring-boot.run.arguments="--server.port=8080" &
    BACKEND_PID=$!
    
    # 等待后端服务启动（可选）
    sleep 5
    
    # 启动前端服务
    if [ -d "$FRONTEND_DIR" ]; then
        echo "切换到前端目录: $FRONTEND_DIR"
        cd "$FRONTEND_DIR"
        echo "启动前端服务..."
        npm run dev &
        FRONTEND_PID=$!
        echo "前端服务已启动，PID: $FRONTEND_PID"
    else
        echo "警告: 前端目录不存在: $FRONTEND_DIR"
    fi
    
    # 等待后端服务完成
    wait $BACKEND_PID
else
    echo "错误: 找不到自定义settings.xml文件: $CUSTOM_SETTINGS"
    exit 1
fi